// // gulp 的入口文件
// // gulp 取消了同步模式 需要给每一个任务传入一个done回调 标识任务结束

// exports.foo = done => {
//     console.log("foo task");
//     done();
// };
// // 默认任务
// exports.default = done => {
//     console.log("default task");
//     done();
// };

// // 在gulp4.0之前 gulp需要使用task API 来定义我们的任务
// const gulp = require("gulp");

// gulp.task("bar", done => {
//     console.log("bar task");
//     done();
// });

// //
// const { series, parallel } = require("gulp");
// const task1 = done => {
//     setTimeout(() => {
//         console.log('task1 working');
//         done()
//     }, 1000);
// }
// const task2 = done => {
//     setTimeout(() => {
//         console.log('task2 working');
//         done()
//     }, 1000);
// }
// const task3 = done => {
//     setTimeout(() => {
//         console.log('task3 working');
//         done()
//     }, 1000);
// }

// exports.foo1 = series(task1, task2, task3) // 按照顺序依次执行
// exports.bar1 = parallel(task1, task2, task3) // 同步执行

// // gulp的异步任务
// exports.callback_error = done => {
//     console.log('callback');
//     done(new Error('task failed'))
// }

// exports.promise = () => {
//     console.log('promise task');
//     return Promise.resolve()
// }
// exports.promise_error = () => {
//     console.log('promise_error');
//     return Promise.reject(new Error('task failed'))
// }

// const timeout = time => {
//     return new Promise(resolve => {
//         setTimeout(resolve(time), time)
//     })
// }

// exports.async = async () => {
//     let time = await timeout(1000)
//     console.log(time);
//     console.log('async task');
// }

// const fs = require("fs");
// const { Transform } = require("stream");
// exports.default = () => {
//     const read = fs.createReadStream("normalize.css");

//     const transform = new Transform({
//         transform: (chunk, encoding, callback) => {
//             const input = chunk.toString()
//             const output = input.replace(/\s+/g, '').replace((/\/\*.+?\*\//g, ''))
//             callback(null, output)
//         },
//     });

//     const write = fs.createWriteStream("normalize.min.css");
//     read.pipe(transform).pipe(write)
//     return read;
// };

const { src, dest } = require("gulp");
const cleanCss = require('gulp-clean-css') // css压缩
const rename = require('gulp-rename')

exports.default = () => {
    return src("./normalize.css")
        .pipe(cleanCss())
        .pipe(rename({extname: '.min.css'}))
        .pipe(dest("dist"));
};
